java如何删除TableColumn中的HTML标记
这是一个发生了什么的例子:
previewTableColumn.setCellValueFactory(new PropertyValueFactory<>("body"));
subjectTableColumn.setCellValueFactory(new PropertyValueFactory<>("subject"));
dateTableColumn.setCellValueFactory(new PropertyValueFactory<>("date"));
tableView.getItems().setAll(model.getObservableDatas());
我需要“预览”列显示没有HTML标记的文本,我想使用Jsoup如下:
public String htmlToText(String html) {
String preview = null;
if (html != null) {
Document doc = Jsoup.parse(html);
preview = doc.body().text();
}
return preview;
}
问题是我需要获取包含标签的字符串来调用这个方法,这个方法来自HTMLEditor,并显示在WebView上,所以我只需要删除这个列中的标签。 在将字符串放入列之前,是否有方法获取字符串并将其从标记中清除
已修复(可能是坏方法)
数据类别:
public class Datas implements Serializable {
private String subject;
private String date;
private String body;
private String bodyString;
public Datas(String subject, String date, String body) {
this.body = body; // I use this for HTMLEditor and WebView
this.bodyString = htmlToText(body); // I use this for the TableColumn
this.date = date;
}
//getter and setter of everything
public String getBodyString() {
return bodyString;
}
public void setBodyString(String bodyString) {
this.bodyString = bodyString;
}
}
在控制器中
previewTableColumn.setCellValueFactory(new PropertyValueFactory<>("bodyString"));
需要修复的错误:如果客户机向脱机客户机发送数据,当脱机客户机联机时,会出现重复值,并且该重复值没有预览
# 1 楼答案
比如
资料来源:https://jsoup.org/cookbook/extracting-data/attributes-text-html